fn main() {
    let long_lived_binding = 1;
    {
        let short_lived_binding = 2;
        println!("inner short:{}", short_lived_binding);
        let long_lived_binding = 5_f32;
        println!("inner long:{}", long_lived_binding);
    }
    // println!("outer short:{}", short_lived_binding);
    println!("{}", long_lived_binding);

    // 重新给已经身影的变量赋值，就是遮蔽（variable shadowning）

    let long_lived_binding = "lsx";
    println!("{}", long_lived_binding);
}

